1. Field of the Invention
The present invention relates to a printing apparatus and printing system. Particularly, the present invention relates to a printing apparatus that is connected to a network and performs communication using a multicast packet according to, for example, the WSD protocol, and a printing system.
2. Description of the Related Art
Today, an increasing number of network-compatible devices promote standardizing the specifications of communication protocols between devices on a network, device discovery mechanisms, device installation mechanisms, and various services such as printing and scanning. Such standardization is also extended to communication protocols for more versatilely exploiting network devices from client PCs, and services for more easily using devices. Examples of such protocols and services are WSD (Web Service for Devices) and UPnP (Universal Plug & Play)®.
WSD is a standard specification defined to respond to requests for various kinds of services using devices. WSD provides standard communication protocols, printing services, and scanning services basically using the Web service architecture. WSD uses standard network communication protocols based on Web services so that devices can be interconnected. As Web service components for devices, WSD defines specifications including device “DISCOVERY”, device “DESCRIPTION”, device “CONTROL”, and device “EVENTING”.
A device driver can be easily installed into a PnP-X client PC using PnP-X (Plug and Play eXtensions) available from Microsoft, Inc. for devices connected via a network. Conventional PnP (Plug and Play) is a function that acts when respective devices and client PCs are connected to various local I/O ports directly via cables or connectors. In PnP, a device transmits a device name (device ID), vendor name (vendor ID), serial number, and the like to a host PC. By referring to these received pieces of information, the host PC can automatically install, in the client, a device driver for using the device.
Similar to WSD, UPnP is also a standard specification defined to respond to requests for a variety of services using devices. UPnP provides standardized communication protocols, printing services, scanning services, AV device control services, and the like. UPnP defines specifications such as device “DISCOVERY”, device “DESCRIPTION”, device “CONTROL”, and device “EVENTING”.
Organizations such as the DLNA are studying compatibility to ensure interconnection between devices using UPnP. UPnP is now employed in many AV devices, home electrical appliances, and network devices in addition to PCs.
Relationship between WSD Communication Protocol and Printing Service
The WSD printing service is provided using a “SendDocument” command for transmitting print data, and “GetPrinterElements” for acquiring printer status information. Printing can be executed using a combination of these commands. These command processes are “CONTROL”. “EVENTING” is a mechanism for notifying the host of an even that has occurred in a device. The host issues a “SUBSCRIBE” command for an event to be acquired, and registers an access destination in the host for the event. If the registered event occurs, the device notifies the registered host of the event. Commands and events are transmitted/received using HTTP on TCP/IP, and SOAP (Simple Object Access Protocol) on HTTP. Various commands are executed by transmitting/receiving the commands of a service described in XML on SOAP. Messages used in “DISCOVERY” are transmitted/received using SOAP on UDP which is one of the standard communication protocols. Messages are exchanged by transmitting/receiving messages described in XML on SOAP. This is called SOAP-Over-UDP communication.
Relationship between UPnP Communication Protocol and Printing Service
The UPnP printing service is executed by transmitting a command defined in the printing service to a target address. “EVENTING” is a mechanism to notify the host of an event that has occurred in a device. More specifically, the host issues a “SUBSCRIBE” command for an event to be acquired, and registers an access destination in the host for the event. If the registered event occurs, the device notifies the registered host of the event. Commands and events are transmitted/received using HTTP on the TCP/IP, and SOAP on HTTP. Various commands are executed by transmitting/receiving the commands of a service described in XML on SOAP. UPnP differs from WSD in that UPnP has a function of periodically notifying the device status using SSDP. In UPnP, the latest device connection state can be obtained by receiving the SSDP message.
As the mechanism of notifying another device of the status of a given device, these protocols standardize a mechanism of notifying the device status in response to transmission of event data or a status inquiry, as described above. An apparatus using this mechanism is, for example, a printer that complies with the WSD protocol and notifies a host PC of information such as a paper out error by eventing. Another example is a printer that complies with the WSD protocol and sends a status such as a paper out error in response to a status inquiry.
In contrast, there is a technique of notifying not a specific host but many network-connected hosts of the device status, unlike the foregoing eventing mechanism and status response mechanism. For example, techniques described in the following three patent publications are known. Japanese Patent Laid-Open No. 2006-202210 describes an arrangement in which when an expansion device is added to newly add a function to a device compliant with the UPnP protocol, the device adds service information about the added function to its basic service information and discloses it on the network. In Japanese Patent Laid-Open No. 2007-066092, temporary identification information is set in advance in a client and device for the purpose of automatic installation of only an intended network device. The device adds the identification information to a “Hello” message which is a network connection message defined by the WSD protocol. Then, the device transmits the resultant “Hello” message. The client recognizes only the “Hello” message containing the identification information. Japanese Patent Laid-Open No. 2007-122376 discloses an arrangement in which when a client receives, from a printer, a “Bye” message defined by the WSD protocol, it determines the cause (for example, sleep, malfunction, or offline) of the “Bye” message and changes the type of printer icon.
However, the mechanism of notifying the device status in response to eventing or a status inquiry, which is standardized in the WSD and UPnP protocols, is not suitable for notifying many unspecified network-connected hosts of the device status.
More specifically, according to the eventing method, the client needs to know, from pre-registration or the like, a host device to which the client is to transmit an event. The client cannot notify unspecified hosts of the device status. The eventing method is premised on one-to-one communication. Thus, when notifying many hosts of the device status, the client needs to repeat eventing by the number of hosts to communicate with. This increases the network traffic and complicates processing.
The status response method is a mechanism of inquiring the status of a specific device from a peripheral. To know a change of the device status, as needed, polling for a status inquiry needs to be done. This method therefore complicates processing and increases the network traffic when there are many peripherals.
To solve the problems when notifying many unspecified hosts of the device status using the WSD or UPnP protocol, a network connection message in WSD or UPnP may be applied. According to this method, when the device status changes, the network connection message is reissued, and a status to be notified is described in device information which is sent back after “DISCOVERY”. This example is a technique disclosed in Japanese Patent Laid-Open No. 2006-202210. In this method, however, to notify a peripheral of the status of a given device, the peripheral needs to issue an inquiry to the device upon receiving a network connection message. After issuing the network connection message, inquiries are concentrated, increasing the network traffic.
As a technique of notifying many unspecified hosts of the device status while solving these problems, methods disclosed in Japanese Patent Laid-Open Nos. 2007-066092 and 2007-122376 are also proposed. According to these methods, a standardized network connection or disconnect message is proprietarily extended. The device status is saved in the extended message and transmitted. These methods can notify many unspecified devices of the status using one packet because the status is notified using the network connection or disconnect message which is a multicast packet. In other words, these methods can prevent an increase in network traffic. However, these methods require verification of connection to confirm that no malfunction occurs in an apparatus incompliant with a proprietarily extended packet.